|
 |
Applicazioni Software |
PROGETTO n° 02 - 6/10
[64 di 166] |
 |
La seconda fase si occupa di acquisire la
parte rimanente dell'informazione... |
| |
|
Commuta il
selettore sugli Switch "alti" |
 |
Si procede ora alla lettura dei rimanenti contatti:
naturalmente è necessario abilitare solo
il gruppo di 4
buffer 3-state
74LS241 attualmente
corrispondenti
agli switch sw 7÷
sw 4 (rispettivamente attaccati ai
pin 2, 4, 6 e 8 ingressi di tipo 1A del
'241)
al fine di collegarli ai pin 11, 10, 12 e
13 del
connettore della parallela (ovviamente gli stessi di prima...), al fine di poterli poi
leggere sui corrispondenti bit 7, 6, 5,e 4
del Registro d'ingresso
0379H/0279H;
per questo gli ingressi di abilitazione G1 e G2 (pin 1e pin 19 del
buffer
'241) devono essere forzati entrambi a 0,
così da rendere attivo solo G1. |
 |
Anche questa volta la scelta di scrivere sul Registro d'uscita
037AH/027AH
il
dato 00000001B (MOV
AL,01H)
forza a
0
i 7 bit
non coinvolti nel progetto (evento
ritenuto indifferente...) ma fissa a 1
il
solo
bit0,
necessario per il controllo. |
 |
Dunque
dentro il registro il
bit0
è forzato 1,
ma, poichè prima di arrivare sul
pin 1
della porta parallela il suo valore logico è
invertito internamente dall'hardware,
i piedini di abilitazione del buffer 3-state ricevono effettivamente lo 0
necessario per consentire la lettura dei 4
switch più significativi. |
 |
Si attiva naturalmente ancora il
piccolo ritardo
per assicurare l'assestamento elettronico del commutatore interno del
buffer 3-state. |
|
|
Lettura dei 4
Switch più significativi |
 |
La procedura è identica a quella della fase
precedente: il breve ritardo imposto rende stabili i dati da leggere sui 4
pin
11, 10, 12 e
13 del
connettore della parallela, per cui possono essere letti sul Registro d'ingresso
0379H/0279H. |
 |
Ora nei 4 bit più significativi di AL è disponibile lo stato dei
4 switch più significativi, cioè sono già nella loro posizione naturale;
per rendere corretto il nuovo mezzo dato è sufficiente perciò
commutare da software il
valore logico del bit7,
invertito internamente dall'hardware
dopo esser stato assunto dal
pin 11
della porta parallela: |
 |
Di questo si occupa ancora l'istruzione
XOR
di AL
con
80H, che rovescia il valore logico del
solo bit7
lasciando inalterati gli altri. |
 |
Per facilitare la prossima ricomposizione del
dato, è conveniente azzerare i 4 bit bassi, con la classica maschera prodotta
dall'istruzione
AND (AND
AL,0F0H). |
©
2001-2006 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|